Reuse-Driven Interprocedural Slicing in the Presence of Pointers and Recursion

نویسندگان

  • Donglin Liang
  • Mary Jean Harrold
چکیده

Program slicing, a technique to compute the subset of program statements that can affect the value of a program variable at a specific program point, is widely used in tools to support maintenance activities. To be useful for supporting these activities, a slicing technique must be sufficiently precise and efficient. Harrold and Ci propose a method for improving the efficiency of slicing by reusing slicing information for subsequent slicing. This paper presents an interprocedural slicing algorithm that improves the efficiency and precision of Harrold and Ci's algorithm for programs with pointer variables and recursion. Our empirical results show that our improvements can effectively achieve more reuse in slice computation, for programs with pointers, and can significantly reduce the sizes of slices, for programs

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A new algorithm for the calculation of transitive dependences

Program slicing can be used to aid in a variety of software maintenance activities including code understanding, code testing, debugging, and program reengineering. Program slicing (as well as other program analysis functions including ripple analysis) can be efficiently performed on an internal program representation called a system dependence graph (SDG). This paper will describe a new method...

متن کامل

Slicing Pointers and Procedures (abstract)

Program slicing restricts attention the components of a program relevant to evaluation of one expression, the slicing criterion. Our slicer, which explicitly represents the store as an aggregate value is the rst to support arbitrary pointer manipulations and aggregate values, and is faster than more limited techniques. We also improve the asymptotic complexity of slicing in the presence of proc...

متن کامل

Eecient Flow-sensitive Interprocedural Computation of Pointer-induced Aliases and Side Eeects

We present practical approximation methods for computing interprocedural aliases and side eeects for a program written in a language that includes pointers, reference parameters and recursion. We present the following results: 1) An algorithm for ow-sensitive interprocedural alias analysis which is more precise and eecient than the best inter-procedural method known. 2) An extension of traditio...

متن کامل

Separate Computation of Alias Information fior Reuse

Interprocedural data flow information IS useful for many software testing and analysis techniques, including data flow testing, regression testing, program slicing, and impact analysis. For programs with aliases, these testing and analysis techniques can yield invalid results, unless the data flow information accounts for aliasing effects. Recent research provides algorithms for performing inte...

متن کامل

Separate Computation of Alias Information for Reuse 1

Interprocedural data ow information is useful for many software testing and analysis techniques, including data ow testing, regression testing, program slicing, and impact analysis. For programs with aliases, these testing and analysis techniques can yield invalid results, unless the data ow information accounts for aliasing eeects. Recent research provides algorithms for performing interproced...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999